// 裴蜀定理 ：a*x + b*y = gcd(a, b)
// 测试链接 ：https://www.luogu.com.cn/problem/P4549
// 相关帖子 ：https://www.cnblogs.com/dx123/p/16724621.html
// 相关帖子 ：https://oi-wiki.org/math/number-theory/bezouts/
// 对于 C++14，我们可以使用自带的 __gcd(a,b) 函数来求最大公约数。
// 而对于 C++ 17，我们可以使用 <numeric> 头中的 std::gcd 与 std::lcm 
// 来求最大公约数和最小公倍数。

#include <bits/stdc++.h>

using namespace std;

int n, s, a;

// gcd(a, b) == 1，则 a 和 b 互质
int gcd(int a, int b)
{
    return b == 0 ? a : gcd(b, a % b);
}

int main()
{
    scanf("%d", &n);
    for (int i = 1; i <= n; ++i)
    {
        scanf("%d", &a);
        s = gcd(s, abs(a));
    }
    printf("%d\n", s);

    return 0;
}